package com.itheima.dubbo.interfaces;


import com.itheima.commons.pojo.entity.Log;
import com.itheima.commons.pojo.domain.User;
import com.itheima.commons.pojo.entity.UserInfos;

import java.util.List;

/**
 * @author wds
 * @date 2021/12/18
 * @apiNote
 */
public interface ManageUserApi {


    /**
     * 分页查询用户的基本信息
     *
     * @param uid      用户id 模糊查询
     * @param nickname 昵称 模糊查询
     * @param city     注册城市
     * @param page     当前页码
     * @param pagesize 每页多少条 默认十条
     * @return
     */
    List<UserInfos> queryUserInfo(String uid, String nickname, String city, Integer page, Integer pagesize);

    /**
     * 查询用户的账号注册信息
     *
     * @param uid 用户id
     * @return
     */
    User queryUser(Long uid);

    /**
     * 查询日志
     *
     * @param uid 用户id
     * @return
     */
    Log queryLog(Long uid);

    /**
     * 根据id查询单个用户
     *
     * @param userId
     * @return
     */
    UserInfos queryUserInfoById(String userId);

    /**
     * 查询匹配数
     *
     * @param id
     * @param nickname
     * @param city
     * @return
     */
    Integer counts(String id, String nickname, String city);
}
